Barcodes are, in general, optical representations of binary data encoded by means of positional or dimensional attributes. Such barcodes can be scanned by optical scanners that, together with interpretive software, allow the encoded binary data to be recovered.
A one-dimensional (“1-D”) or linear barcode consists of bars (i.e., black lines) and spaces (i.e., white spaces) of various widths and employs width encoding only. Such 1-D barcodes are scanned from side-to-side and information is relevant in one dimension only. A single-wide bar represents a binary one. A single-wide space represents a zero.
A two-dimensional (“2-D”) or matrix barcode consists of an arrangement of dark and light squares and uses both width and height encoding. In a 2-D matrix code, the matrix code consists of modules. A dark module is a binary one and a light module is a binary zero. 2-D barcodes are scanned both from side-to-side and top-to-bottom and information is relevant in two dimensions. An example of such a 2-D barcode is the well-known and widely-used QR code.
The applicant has appreciated that it is possible to provide an encoded cell that represents more than a single bit of information, thereby enabling the provision of encoded cells (e.g., a cell array) that represent greater quantities of information than prior art barcodes. Furthermore, the applicant has appreciated that it is possible to include, within a cell array, cells that identify an encoding scheme used to encode other cells in the cell array. Such identity can reduce an amount of time needed to decode a cell array. Furthermore still, the applicant has appreciated that a cell within a cell array can include redundant aspects for confirming accuracy of decoding the cell array. Furthermore still, the applicant has appreciated that encoded cells with different noise level tolerances can be defined to accommodate different means for outputting a cell or cell array and to accommodate different means of capturing a cell or cell array.